const app = getApp();

var database = require('../../api/database');

const db = wx.cloud.database();
const E_sportsCircle = db.collection('campus_E-sportsCircle_userinfo');
const E_sportsCircle_Category1 = db.collection('campus_E-sportsCircle_Category-1');

//正则表达式
var phoneREG = /^1\d{10}$/; // 手机号
var uNameREG = /^[\u4E00-\u9FA5]{2,4}$/; // 姓名
var smsCodeREG = /^\d{6}$/; // 6位验证码
var pureNumREG = /^[0-9]*$/; // 验证纯数字

var imageLength = 0; //判断是否上传图片

Page({

  /**
   * 页面的初始数据
   */
  data: {
    //基础信息表单是否隐藏
    userInfoFormHidden: false,
    //技能认证表单是否隐藏
    userAbilityFormHidden: true,
    exampleDiagramHidden: false,
    //陪玩信息表单是否隐藏
    userPlayFormHidden: true,
    //人工审核表单是否隐藏
    userSubmitFormHidden: true,
    //状态栏
    height: app.globalData.CustomBar,
    padding_top: app.globalData.CustomTitle,
    //步骤条初始信息
    numList: [{
      name: '手机绑定'
    }, {
      name: '技能认证'
    }, {
      name: '陪玩信息'
    }, {
      name: '人工审核'
    }, ],
    num: 0,
    imgList: [],
    submitBtn: '下一步',
    //游戏截图段位要求
    rankRequire: [
      //端游列表
      {
        id: "0",
        content: "（段位要求：男：黄金Ⅰ及以上，女：白银Ⅰ及以上）",
        url: "https://7371-sqw88-6gmvufl8439317df-1304806617.tcb.qcloud.la/campus_E-sportsCircle_Category/game/LOL.png?sign=231901194ca2549c24b9abd0e17312e4&t=1624700790",
        remarks: "英雄联盟"
      },
      {
        id: "1",
        content: "（段位要求：男：不朽星钻3200分及以上，女：白金2700分及以上）",
        url: "https://7371-sqw88-6gmvufl8439317df-1304806617.tcb.qcloud.la/campus_E-sportsCircle_Category/gameType/PUBG.png?sign=47f8d13824f86035c95bc5b6171d891f&t=1624700736",
        remarks: "刺激战场"
      },
      {
        id: "2",
        content: "（段位要求：男：钻石3000分及以上，女：白金2500分及以上）",
        url: "https://7371-sqw88-6gmvufl8439317df-1304806617.tcb.qcloud.la/campus_E-sportsCircle_Category/gameType/OverWatch.jpeg?sign=f04a1149021f88d5563ba9e8c57a8dae&t=1624701002",
        remarks: "守望先锋"
      },
      {
        id: "3",
        content: "（段位要求：男：宗师1级及以上，女：大师1级及以上）",
        url: "https://7371-sqw88-6gmvufl8439317df-1304806617.tcb.qcloud.la/campus_E-sportsCircle_Category/gameType/CF.png?sign=590f4dc3ca158c1ca968e1650e108ef3&t=1624700755",
        remarks: "穿越火线"
      },
      //手游列表
      {
        id: "m0",
        content: "（段位要求：男：最强王者及以上，女：至尊星耀Ⅰ及以上）",
        url: "https://7371-sqw88-6gmvufl8439317df-1304806617.tcb.qcloud.la/campus_E-sportsCircle_Category/gameType/Honor%20of%20Kings.png?sign=9617407942585fc3d651352fd6399b5b&t=1624702335",
        remarks: "王者荣耀"
      },
      {
        id: "m1",
        content: "（段位要求：男：铂金Ⅰ及以上，女：黄金Ⅰ及以上）",
        url: "https://7371-sqw88-6gmvufl8439317df-1304806617.tcb.qcloud.la/campus_E-sportsCircle_Category/gameType/LOL_mobile.png?sign=471f75709c4f0e5584919f94f2e5e4fe&t=1624702311",
        remarks: "英雄联盟"
      },
      {
        id: "m2",
        content: "（段位要求：男：超级王牌及以上，女：荣耀皇冠1段及以上）",
        url: "https://7371-sqw88-6gmvufl8439317df-1304806617.tcb.qcloud.la/campus_E-sportsCircle_Category/gameType/Game%20For%20Peace.png?sign=2034818ce4fda7e935afcba12f54373c&t=1624702327",
        remarks: "和平精英"
      }
    ],
    rankId: '0',
    //用户选择的游戏类型
    userGames: ''
  },

  //返回主页“about”
  goback_about() {
    wx.navigateBack({
      delta: 1,
    })
  },

  //前往游戏类型选择界面
  gotoGameChange() {
    wx.navigateTo({
      url: '../gameChange/gameChange',
    })
  },

  //用户点击随机昵称
  randomUserName() {
    //组成形式：主姓名+副姓名+末姓名=随机昵称
    //随机主姓名，共100个
    var familyNames = new Array(
      "赵", "钱", "孙", "李", "周", "吴", "郑", "王", "冯", "陈",
      "褚", "卫", "蒋", "沈", "韩", "杨", "朱", "秦", "尤", "许",
      "何", "吕", "施", "张", "孔", "曹", "严", "华", "金", "魏",
      "陶", "姜", "戚", "谢", "邹", "喻", "柏", "水", "窦", "章",
      "云", "苏", "潘", "葛", "奚", "范", "彭", "郎", "鲁", "韦",
      "昌", "马", "苗", "凤", "花", "方", "俞", "任", "袁", "柳",
      "酆", "鲍", "史", "唐", "费", "廉", "岑", "薛", "雷", "贺",
      "倪", "汤", "滕", "殷", "罗", "毕", "郝", "邬", "安", "常",
      "乐", "于", "时", "傅", "皮", "卞", "齐", "康", "伍", "余",
      "元", "卜", "顾", "孟", "平", "黄", "和", "穆", "萧", "尹"
    );
    //随机副姓名,共329个
    var givenNames = new Array(
      "刀白凤", "丁春秋", "马夫人", "马五德", "小翠", "于光豪", "巴天石", "不平道人", "邓百川", "风波恶",
      "甘宝宝", "公冶乾", "木婉清", "少林老僧", "太皇太后", "天狼子", "天山童姥", "王语嫣", "乌老大", "无崖子",
      "云岛主", "云中鹤", "止清", "白世镜", "包不同", "本参", "本观", "本相", "本因", "出尘子",
      "冯阿三", "古笃诚", "过彦之", "兰剑", "平婆婆", "石清露", "石嫂", "司空玄", "司马林",
      "玄慈", "玄寂", "玄苦", "玄难", "玄生", "玄痛", "叶二娘", "左子穆", "华赫艮", "李春来",
      "李傀儡", "李秋水", "刘竹庄", "朴者和尚", "祁六三", "乔峰", "全冠清", "阮星竹", "西夏宫女", "许卓诚",
      "朱丹臣", "竹剑", "阿碧", "阿洪", "阿胜", "阿朱", "阿紫", "波罗星", "陈孤雁", "何望海",
      "鸠摩智", "来福儿", "孟师叔", "努儿海", "宋长老", "苏星河", "苏辙", "完颜阿古打", "吴长风",
      "吴光胜", "吴领军", "辛双清", "严妈妈", "余婆婆", "岳老三", "张全祥", "单伯山", "单季山", "单叔山",
      "单小山", "单正", "段延庆", "段誉", "段正淳", "段正明", "范禹", "范百龄", "范骅", "苟读",
      "郁光标", "卓不凡", "宗赞王子", "哈大霸", "姜师叔", "神山上人", "神音", "狮鼻子", "室里",
      "项长老", "姚伯当", "幽草", "赵钱孙", "赵淘", "哲罗星", "钟灵", "钟万仇", "高升泰", "龚光杰",
      "贾老者", "康广陵", "秦红棉", "容子矩", "桑土公", "唐光雄", "奚长老", "徐长老", "诸保昆", "崔百泉",
      "崔绿华", "符敏仪", "菊剑", "聋哑婆婆", "梅剑", "萧远山", "虚竹", "游骥", "游驹", "游坦之",
      "程青霜", "傅思归", "葛光佩", "缘根", "智光大师", "鲍千灵", "褚万里", "瑞婆婆", "端木元", "赫连铁树",
      "黎夫人", "慕容博", "谭公", "谭婆", "谭青", "摘星子", "慧方", "慧观", "慧净", "慧真", "穆贵妃",
      "薛慕华", "和里布", "耶律洪基", "耶律莫哥", "耶律涅鲁古", "耶律重元", "易大彪", "卜沉", "丁坚", "丁勉",
      "上官云", "万大平", "于人豪", "于嫂", "长青子", "丹青生", "邓八公", "方人智", "方生", "方证",
      "风清扬", "计无施", "木高峰", "天门道人", "天松道人", "天乙道人", "王伯奋", "王诚", "王二叔",
      "王夫人", "王家驹", "王家骏", "王元霸", "王仲强", "白二", "白熊", "丛不弃", "东方不败",
      "乐厚", "令狐冲", "宁中则", "平夫人", "平一指", "申人俊", "史镖头", "史登达司马大", "田伯光",
      "仪和", "仪琳", "仪清", "玉玑子", "玉灵道人", "玉磬子", "玉音子", "玉钟子", "左冷禅", "成不忧",
      "成高道人", "冲虚道长", "吉人通", "老不死", "老头子", "刘菁", "刘芹", "刘正风", "米为义", "农妇",
      "齐堂主", "曲非烟", "曲洋", "任我行", "英颚西宝", "向大年", "向问天", "陈七", "陈歪嘴", "迟百诚",
      "狄镖头", "狄修", "定静师太", "杜长老", "何三七", "季镖头", "劳德诺", "陆伯", "陆大有", "任盈盈",
      "沙天江", "秃笔翁", "吴柏英", "吴天德", "辛国梁", "严三星", "杨莲亭", "余沧海", "余人彦", "岳灵珊",
      "张夫人", "张金整", "定逸", "建除", "林震南", "罗人杰", "易国梓", "易师爷", "易堂主", "英长老",
      "岳不群", "郑镖头", "郑雩", "周孤桐", "费彬", "封不平", "洪人雄", "侯人英", "觉月", "施戴子",
      "施令威", "闻先生", "哑婆婆", "钟镇", "祝镖头", "祖千秋", "高克新", "高明根", "贾布", "贾人达",
      "莫大", "秦娟", "秦伟帮", "桑三娘", "桃花仙", "桃实仙", "桃叶仙", "梁发", "绿竹翁", "麻衣汉子",
      "清虚道人", "游迅", '葛长老', "黑白子", "黑熊", "桃枝仙", "陶钧", "夏老拳师", "崔镖头", "黄伯流",
      "黄国柏", "黄钟公", "鲁连荣", "舒奇", "童百熊", "鲍大楚", "解风", "蓝凤凰", "谭迪人", "假东方不败",
      "震山子", "子璇", "淼", "国栋", "夫子", "瑞堂", "甜", "敏", "尚", "国贤", "贺祥", "晨涛"
    );
    //随机末姓名，共90个
    var lastNames = new Array(
      "昊轩", "易轩", "益辰", "益帆", "益冉", "瑾春", "瑾昆", "春齐", "杨", "文昊",
      "东东", "雄霖", "浩晨", "熙涵", "溶溶", "冰枫", "欣欣", "宜豪", "欣慧", "建政",
      "美欣", "淑慧", "文轩", "文杰", "欣源", "忠林", "榕润", "欣汝", "慧嘉", "新建",
      "建林", "亦菲", "林", "冰洁", "佳欣", "涵涵", "禹辰", "淳美", "泽惠", "伟洋",
      "涵越", "润丽", "翔", "淑华", "晶莹", "凌晶", "苒溪", "雨涵", "嘉怡", "佳毅",
      "子辰", "佳琪", "紫轩", "瑞辰", "昕蕊", "萌", "明远", "欣宜", "泽远", "欣怡",
      "佳怡", "佳惠", "晨茜", "晨璐", "运昊", "汝鑫", "淑君", "晶滢", "润莎", "榕汕",
      "佳钰", "佳玉", "晓庆", "一鸣", "语晨", "添池", "添昊", "雨泽", "雅晗", "雅涵",
      "清妍", "诗悦", "嘉乐", "晨涵", "天赫", "玥傲", "佳昊", "天昊", "萌萌", "若萌"
    );
    let i = parseInt(Math.random() * 99);
    let j = parseInt(Math.random() * 328);
    let k = parseInt(Math.random() * 89);
    let name = familyNames[i] + givenNames[j] + '-' + lastNames[k];
    this.setData({
      randomUserNameValue: name
    })
  },

  //选择图片
  ChooseImage() {
    wx.chooseImage({
      count: 1, //默认9
      sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图，默认二者都有
      sourceType: ['album'], //从相册选择
      success: (res) => {
        imageLength = res.tempFilePaths.length
        if (this.data.imgList.length != 0) {
          this.setData({
            imgList: this.data.imgList.concat(res.tempFilePaths)
          })
        } else {
          this.setData({
            imgList: res.tempFilePaths
          })
        }
        this.setData({
          exampleDiagramHidden: true
        })
      }
    });
  },
  //查看图片
  ViewImage(e) {
    wx.previewImage({
      urls: this.data.imgList,
      current: e.currentTarget.dataset.url
    });
  },
  //删除图片
  DelImg(e) {
    wx.showModal({
      title: '删除图片',
      content: '确定要删除这张照片吗？',
      success: res => {
        imageLength = 0
        if (res.confirm) {
          this.data.imgList.splice(e.currentTarget.dataset.index, 1);
          this.setData({
            imgList: this.data.imgList,
            exampleDiagramHidden: false
          })
        }
      }
    })
  },

  //点击"下一步"
  numSteps(e) {
    let that = this
    let openid = wx.getStorageSync('openid');
    database.getOpenid(openid).then((res) => {
      //开发者权限
      if (res.data[0].user_Category == 666) {
        if (Number(this.data.num) == 0) {
          this.setData({
            userInfoFormHidden: true,
            userAbilityFormHidden: false,
            num: this.data.num == this.data.numList.length - 1 ? 0 : this.data.num + 1
          })
        } else if (Number(this.data.num) == 1) {
          this.setData({
            userAbilityFormHidden: true,
            userPlayFormHidden: false,
            num: this.data.num == this.data.numList.length - 1 ? 0 : this.data.num + 1
          })
        } else if (Number(this.data.num) == 2) {
          this.setData({
            userPlayFormHidden: true,
            userSubmitFormHidden: false,
            num: this.data.num == this.data.numList.length - 1 ? 0 : this.data.num + 1,
            submitBtn: '确定'
          })
        } else if (Number(this.data.num) == 3) {
          wx.redirectTo({
            url: '../userPermissionSuccess/userPermissionSuccess',
            success() {
              wx.showToast({
                title: '提交',
              })
            }
          })
          this.setData({
            userSubmitFormHidden: true,
            submitBtn: ""
          })
        }
      }


      //成员权限
      else {
        if (Number(this.data.num) == 0) {
          if (e.detail.value.userPhone == "") {
            wx.showToast({
              title: '请输入您的手机号码',
              icon: 'none'
            })
          } else if (!phoneREG.test(e.detail.value.userPhone)) {
            wx.showToast({
              title: '手机号码不正确，请检查后重新输入',
              icon: 'none'
            })
          } else {
            database.category1_phone(e.detail.value.userPhone).then((res) => {
              if (res.data.length != 0) {
                wx.showToast({
                  title: '电话号码已存在',
                  icon: 'none'
                })
              } else {
                this.setData({
                  userInfoFormHidden: true,
                  userAbilityFormHidden: false,
                  num: this.data.num == this.data.numList.length - 1 ? 0 : this.data.num + 1
                })
              }
            })
          }
        } else if (Number(this.data.num) == 1) {
          if (imageLength == 0) {
            wx.showToast({
              title: '请上传游戏截图',
              icon: 'none'
            })
          } else {
            this.setData({
              userAbilityFormHidden: true,
              userPlayFormHidden: false,
              num: this.data.num == this.data.numList.length - 1 ? 0 : this.data.num + 1
            })
          }
        } else if (Number(this.data.num) == 2) {
          if (e.detail.value.userName == "") {
            wx.showToast({
              title: '请输入陪玩昵称',
              icon: 'none'
            })
          } else if (e.detail.value.userIntroduce == "") {
            wx.showToast({
              title: '请输入陪玩介绍',
              icon: 'none'
            })
          } else {
            database.category1_name(e.detail.value.userName).then((res) => {
              if (res.data.length != 0) {
                wx.showToast({
                  title: '该昵称已被使用',
                  icon: 'none'
                })
              } else {
                this.setData({
                  userPlayFormHidden: true,
                  userSubmitFormHidden: false,
                  num: this.data.num == this.data.numList.length - 1 ? 0 : this.data.num + 1,
                  submitBtn: '确定'
                })
              }
            })
          }

        } else if (Number(this.data.num) == 3) {
          console.log(e.detail.value)
          console.log(this.data.imgList)
          wx.showLoading({
            title: '提交中...',
            success() {
              E_sportsCircle_Category1.add({
                data: {
                  examine: false,
                  isTrue: false,
                  user_Name: e.detail.value.userName,
                  user_ability: "",
                  user_abilityImg: that.data.imgList[0],
                  user_games: that.data.userGames,
                  user_introduce: e.detail.value.userIntroduce,
                  user_phone: e.detail.value.userPhone
                },
                success(res_add) {
                  E_sportsCircle_Category1.doc(res_add._id).get({
                    success(res_get) {
                      //复杂数据库操作
                      const _ = db.command
                      E_sportsCircle.where({
                        _openid: res_get.data._openid
                      }).update({
                        data: {
                          submitCategory_One: true,
                          frequencyCategory_One: _.inc(1)
                        },
                        success() {
                          wx.hideLoading({
                            success: () => {
                              wx.redirectTo({
                                url: '../userPermissionSuccess/userPermissionSuccess'
                              })
                              that.setData({
                                userSubmitFormHidden: true,
                                submitBtn: ""
                              })
                            },
                          })
                        }
                      })
                    }
                  })
                }
              })
            }
          })
        }
      }
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})